1. Field of the Invention
The present invention relates broadly to a computer network. More particularly, the invention relates to a network-device management apparatus and method including network management software, and to a recording medium.
2. Description of the Related Art
Recently, local area networks (LANs) in which computers are interconnected have come to be widely used. Such a local area network is constructed over a floor or the entirety of a building, a group of buildings (an enclosure), a local area, or a larger area. In some cases, such networks are interconnected, or connected to a worldwide network. In such interconnected LANs, various techniques for interconnecting hardware apparatuses and a plurality of network protocols are used.
In a simple isolated LAN, each user can manage apparatuses. That is, the user can exchange (add, remove or replace) apparatuses, install software, or check problems.
However, in a large-scale complicated LAN or a large group of interconnected LANS, xe2x80x9cmanagementxe2x80x9d is required. The word xe2x80x9cmanagementxe2x80x9d indicates both management by a human network manager and management according to software used by the manager. In the present application, xe2x80x9cmanagementxe2x80x9d indicates management according to software for managing the entire system, and xe2x80x9cuserxe2x80x9d indicates a person who uses network management software. The user is usually a person responsible for system management. By using network management software, the xe2x80x9cuserxe2x80x9d can obtain management data on the network and change the data.
A large-scale network system is a dynamic system which always requires increase or removal of apparatuses, updating of software, detection of problems, and the like. In general, various systems possessed by various people and supplied by various suppliers are present.
Various methods for managing network devices on a network constituting such a large-scale network system have been provided by many standardization organizations. The International Organization for Standardization (ISO) has provided a general-purpose standard framework called an Open System Interconnection (OSI) model. The OSI model of a network control protocol is called a Common Management Information Protocol (CMIP). The CMIP is a common network management protocol used in Europe.
Recently, a modified protocol relating to the CMIP called a Simple Network Management Protocol (SNMP) is being used as a network management protocol which can be more commonly used (see xe2x80x9cIntroduction to TCP/IP Network Management for Pratical Managementxe2x80x9d written by M. T. Rose and translated by Takeshi Nishida, first edition Aug. 20, 1992 by Toppan Printed Company, Limited).
According to the SNMP network management technique, a network management system includes at least one network management station (NMS), some nodes to be managed, each having agents, and a network management protocol used by the management station or the agents in order to exchange management information. By communicating with agent software of a node to be managed using network management software of the NMS, the user can obtain management data on the network and change the data.
The word xe2x80x9cagentxe2x80x9d indicates software operating as a background process at each node to be managed. When the user requests management data from a node to be managed on the network, the network management software includes an object identifier (to be described later) in a management packet or frame, and transmits the resultant data to the agent of the node to be managed.
The agent interprets the object identifier and obtains data corresponding to the object identifier. The agent includes the data in the packet and transmits the resultant data to the network management software. At that time, the agent calls, in some cases, a corresponding process in order to obtain the data.
The agent also holds data relating to the node to be managed in the form of a database. This database is called an MIB (management information base). FIG. 4 illustrates the concept of the structure of the MIB. As shown in FIG. 4, the MIB has a data structure in the form of a tree, where an identifier is uniquely provided for each node. In FIG. 4, the identifier for a node is defined based on the number written in the parentheses. For example, the identifier for a node 401 shown in FIG. 4 is 1. Since a node 402 is a child of the node 401, the identifier for the node 402 is 1xc2x73. Similarly, the identifier for a node 403 is 1xc2x73xc2x76xc2x71xc2x72. Such an identifier for a node is an object identifier. In FIG. 4, a part of the MIB defined as a standard is extracted and shown.
The structure of the MIB is called a Structure of Management Information (SMI), and is defined by RFC1155 Structure and Identification of Management Information for TCP/IP-based Internets.
Next, the SNMP will be described. A PC (personal computer) where the network management software operates (hereinafter termed an xe2x80x9cmanagerxe2x80x9d) and a network device to be managed (where an SNMP agent operates) (hereinafter termed an xe2x80x9cagentxe2x80x9d) communicate with each other using the SNMP. The SNMP has five commands, which are called Get-request, Get-next-request, Get-response, Set-request and Trap. FIG. 8 illustrates a manner in which these commands are exchanged between the manager and the agent.
The Get-request and Get-next-request commands are commands transmitted from the manager to the agent. The agent which has received these commands transmits the Get-response command to the manager in order to notify the manager of the value of the MIB object (801 and 802).
The Set-request command is a command transmitted from the manager to the agent in order to set the value of the MIB object of the agent. The agent which has received this command transmits the Get-request command to the manager in order to notify the manager of the result of the setting (803).
The Trap command is a command transmitted from the agent to the manager in order to notify the manager of a change in the agent""s own state (804).
FIG. 7 is a diagram illustrating the formats of commands other than the Trap command, i.e., the Get-request, Get-next-request, Get-response and Set-request commands (generically termed xe2x80x9cSNMP messagesxe2x80x9d). In FIG. 7, reference numeral 700 represents an SNMP message. The SNMP message includes a version 701, a community name 702, and a PDU 703. Reference numeral 710 represents the detail of the PDU 703.
The PDU 710 includes a PDU type 711, a request ID 712, an error status 713, an error index 714, and MIB information 715. A value for identifying the command is stored in the PDU type 711. The values 0, 1, 2 and 3 of the PDU type 711 indicates the Get-request, Get-next-request, Get-response and Set-request commands, respectively. A value indicating error information is stored in the error status 713. A pair comprising an MIB object identifier and the value of the MIB object is stored in the MIB information 715.
Next, a large-scale network which requires management will be described. FIG. 1 is a diagram illustrating a network where a network board (NB) 101 for connecting a printer to the network is connected to a printer 102 having an open architecture. The NB 101 is connected to a local area network (LAN) 100 via a LAN interface, such as an Ethernet interface 10 Base-2 having a coaxial connector, 10 Base-T having RJ-45, or the like.
A plurality of PCs, such as a PC 103, a PC 104 and the like, are also connected to the LAN 100. These PCs can communicate with the NB 101 under the control of a network operating system. It is possible to assign one of the PCs, such as the PC 103 or the like, to be used as a network management unit. A printer, such as a printer 105 connected to the PC 104, may be connected to each PC.
A file server 106 is also connected to the LAN 100 in order to manage access to a file stored in a large-capacity (for example, 10 billion bytes) network disk 107. A print server 108 causes connected printers 109a and 109b, the printer 105 provided at a remote location, and the like to perform printing. Any other peripheral apparatuses (not shown) may also be connected to the LAN 100.
In order to realize efficient communication between various network members, the network shown in FIG. 1 can use network software, such as Novell, UNIX or the like. Although any network software may be used, software called NetWare (trade name) provided by Novell Corporation (for a detailed description of this software package, see on-line documentation included in the NetWare package available from the Novell Corporation) may, for example, be used.
The configuration shown in FIG. 1 will now be briefly described. The file server 106 performs transmission/reception of a data file between LAN members, storage of the data file, cueing and cashing, and operates as a file management unit. For example, data files provided by the PCs 103 and 104 are transmitted to the file server 106. The file server 106 arranges the received data files in order, and transmits the data files to the printer 109a in accordance with a command from the print server 108.
Each of the PCs 103 and 104 generates data files, transmits the generated data files to the LAN 100, receives data files from the LAN 100, and displays and/or processes the data files. Although PCs are illustrated in FIG. 1, any other computer apparatuses which are suitable for executing network software may also be used. For example, when UNIX software is used, UNIX work stations may be connected to the network. These UNIX work stations are used together with the illustrated PCs in an appropriate situation.
Usually, the LAN 100 provides a somewhat local user group, such as a user group on one floor or a plurality of consecutive floors within one building, with service. A wide area network (WAN) may be constructed if users are present at locations remote from each other, for example, when users are located in different buildings or different states. The WAN is basically an aggregate of some LANs formed by connecting the LANs via a high-speed digital line, such as a high-speed Integrated Services Digital Network (ISDN) or the like.
Accordingly, as shown in FIG. 1, the WAN is constructed by interconnecting the LANs 100, 110 and 120 via a MODEM (modulator-demodulator)/transponder 130 or a backbone 140 according to simple electric connection using a plurality of buses. Dedicated PCs are connected to each of the LANs. Although not always necessary, a file server and a print server are usually connected to the LAN.
Accordingly, as shown in FIG. 1, LAN 110 includes PCs 111 and 112, a file server 113, a network disk 114, a print server 115, and printers 116 and 117. On the other hand, LAN 120 is configured only by PCs 121 and 122. An apparatus connected to each of the LANs 100, 110 and 120 can access the function of another apparatus connected to another of the LAN""s.
An agent may be mounted on a network board for connecting a printer to the network. It is thereby possible to manage the printer by means of network management software. The user can acquire information relating to the printer to be managed and change the state of the printer using the network management software. More specifically, for example, the user can acquire a character string displayed on a liquid-crystal display of the printer, or change designation of the default sheet-feeding cassette.
Next, a description will be provided of a case in which the network board (NB) mounting the agent is connected to the printer. As shown in FIG. 2, the NB 101 is incorporated within an internal expansion I/O slot of the printer 102, thus becoming an xe2x80x9cembeddedxe2x80x9d network node performing the following processing and having a data storage function. This configuration of the NB101 has the feature of providing characteristic auxiliary functions for controlling and managing a large multi-area WAN. The auxiliary functions include, for example, control and observation of the state of the printer from a remote location on the network (such as the office of the network controller), automatic control of the printer configuration in order to provide an initial environment to guarantee the next user after each printing job, a printer log which can be accessed via the network in order to specify the amount of load of the printer or to provide a schedule for exchanging the toner cartridge, and statistics of use.
The important factor in the design of the NB is a function to access printer control from the NB 101 via a two-way interface, such as a shared memory or the like. An interface other than a shared memory, such as an SCSI (small computer system interface) or the like, is in some cases, used. Information relating to the state of the printer is thereby transmitted to the NB 101 or an external network node, and many auxiliary functions can be mounted. Printing-image information and control information are formed by a microprocessor provided on the NB 101, written in the shared memory, and read by the printer 102. Similarly, the printer-state information is transmitted from the printer 102 to the shared memory, and read by the NB processor.
FIG. 2 is a partly cut-away view illustrating a state in which the NB 101 is installed in the printer 102. As shown in FIG. 2, the NB 101 is configured by a phase plate 101b for network connection, and a printed circuit board 101a on which the phase plate 101b is mounted. The NB 101 is connected to a printer interface card 150 via a connector 170. The printer interface card 150 directly controls the printer engine of the printer 102. Printing data and printer control commands are input from the NB 101 to the printer interface card 150 via the connector 170. On the other hand, the printer-state information is output from the printer interface card 150 via the connector 170. The NB 101 transmits the printer-state information to the LAN 100 via a network connector provided at the phase plate 101b. The printer 102 can also receive printing data from a conventional serial port 102a or parallel port 102b. 
FIG. 3 is a block diagram illustrating electric connection between the printer 102 and the LAN 100. The NB 101 is connected to the LAN 100 and the printer 102 via a LAN interface and the printer interface card 150, respectively. The NB 101 includes a microprocessor 301 for controlling the NB 101, a ROM (read-only memory) 303 storing operation programs for the microprocessor 301, a RAM (random access memory) 302 utilized as a working area when the microprocessor 301 executes a program, and a shared memory 200 for exchange of data between the NB 101 and the printer interface card 150. These units are interconnected via an internal bus.
A program NB for operating the NB 101 as an SNMP agent is stored in the ROM 303. The microprocessor 301 operates in accordance with the program stored in the ROM 303, and uses the RAM 302 as a working area. The microprocessor 301 also uses the shared memory 200 as a buffer region for communicating with the printer interface card 150.
A microprocessor 151 of the printer interface 150 exchanges data with the NB 101 via the shared memory 200 in the NB 101. The microprocessor 151 also communicates with a printer engine 160 which actually operates a printing mechanism.
Next, a description will be provided of a PC where the network management software is executed. FIG. 5 is a block diagram illustrating the configuration of a PC 500 which can execute the network management software. In FIG. 5, the PC 500 can execute the network management software, and is equivalent to the PC 103 shown in FIG. 1. The PC 500 includes a CPU 501 which executes the network management software stored in a ROM 502 or a hard disk (HD) 511, or supplied from a floppy-disk drive (FD) 512, and controls respective devices connected to a system bus 504.
A RAM 503 operates as the main memory, a working area or the like of the CPU 501. A keyboard controller (KBC) 505 controls instructions input through a keyboard (KB) 509, a pointing device (not show) and the like. A CRT controller (CRTC) 506 controls display on a CRT display (CRT) 510. A disk controller (DKC) 507 controls the hard disk (HD) 511 and the floppy disk drive (FD) 512, each of which stores a boot program, various application programs, editing files, user files, the network management software and the like. A network interface card (NIC) 508 bidirectionally exchanges data with agents or network apparatuses.
Next, a description will be provided of the configuration of the network management software in a conventional approach. A network management apparatus in the conventional approach is realized by a PC similar to the PC which can realize the network management apparatus shown in FIG. 5. The network management software according to the present invention, which is the main subject of entirety of the following description, is stored in the hard disk (HD) 511. In the entirety of the following description, unless otherwise mentioned, the main subject of execution in hardware is the CPU 501, and the main subject of control in software is the network management software. In this conventional approach, although Windows 95(copyright) (provided by Microsoft Corporation) is assumed to be used as an OS (operating system), the OS is not limited to this software.
The network management software according to the present invention may be stored in and supplied from a storage medium, such as a floppy disk, a CD(compact disc)-ROM or the like. In this case, the program is read from the storage medium using the floppy-disk drive 512, a CD-ROM drive (not shown) or the like, and is installed in the hard disk (HD) 511.
FIG. 6 is a diagram illustrating the configuration of modules of the network management software according to the conventional approach. This network management software is stored in the hard disk 511 shown in FIG. 5, and is executed by the CPU 501. At that time, the CPU 501 uses the RAM 503 as a working area.
In FIG. 6, reference numeral 601 represents a device-list module, which displays a summary of network devices connected to the network (the manner of displaying the summary is described below with reference to FIG. 12). Reference numeral 602 represents an entirety-control module, which controls other modules based on instructions from the device list module 601.
A configurator 603 is a module which performs special processing relating to network setting by an agent. A search module 604 searches network devices connected to the network. The summary of network devices searched by the search module 604 is displayed on the device-list module 601. A NetWare-job module 605 acquires the state of a printing job from the network server using NetWare API616 (for the NetWare API, see, for example, xe2x80x9cNetWare Programmer""s Guide for Cxe2x80x9d published by the Novell Corporation, which is available from the Novell Corporation).
Each of a UI (user interface) module A 606 and a UI module B 607 displays a device detail window (described below). A UI module is provided for each network device whose detail information is to be displayed. Each of a control module A 608 and a control module B 609 performs control peculiar to each network device whose detail information is to be acquired. As UI modules, a control module is provided for each network device whose detail information is to be acquired. Each of the control module A 608 and the control module B 609 acquires MIB information from a network device to be managed using an MIB module 610, converts data of the MIB information if necessary, and provides the UI module A 606 and the UI module B 607 with the data.
The MIB module 610 performs conversion between an object identifier and an object key. The object key is a 32 bit integer which corresponds to each object identifier. The object identifier is a variable-length identifier. In the network management software according to the present invention, a fixed-length identifier corresponding to each object identifier is internally used because it is troublesome to deal with a variable-length identifier when mounting the network management software. A module superior to the MIB module 610 deals with the MIB information using the object key. The network management software is thereby easily mounted.
Reference numeral 611 represents an SNMP module, which transmits and receives an SNMP packet. Reference numeral 612 represents a common transport module, which operates as an interface with an inferior protocol for carrying the SNMP packet. Actually, one of an IPX (Internet Packet Exchange) handler 613 and a UDP (User Datagram-Protocol) handler 614 transfers a packet according to a protocol selected by the user when the network management software operates. In order to mount the UDP handler 614, WinSock API617 is used (for Winsock, see the specification of Windows Socket API v1.1, which is available from a number of sources, and is incorporated, for example, in Visual C++, which is a compiler provided by the Microsoft Corporation).
A current protocol 615 used by the configurator 603 indicates one of the IPX protocol and the UDP protocol selected by the user when the network management protocol operates.
A description will now be provided of an interface between the search module 604 and the MIB module 610 shown in this conventional approach.
The MIB module 610 provides a superior module with an API (application programming interface) of a C language shown in FIG. 9. First, in order to open an interface (termed a xe2x80x9cportxe2x80x9d) for an assigned address with the MIB module 610, the superior module calls a MIBOpen function 901. The MIB module 610 transmits an identifier for identifying the opened interface (termed a xe2x80x9cport identifierxe2x80x9d) to the superior module (the value is transmitted to a first argument port of the MIBOpen function 901). Then, the superior module exchanges data with the MIB module using the port identifier. The value of the port identifier is termed a port value.
The assigned address indicates an address in a protocol in operation, and is an IP address and a NetWare address in the cases of the IP protocol and the NetWare protocol, respectively. It is also possible to assign a broadcast address in each protocol. When a port is opened by assigning a broadcast address, it is possible to communicate with a plurality of network devices which respond to the broadcast address.
When the superior module comes to be in a state of not using the port, it closes the port by calling an MIBClose function 904.
When the superior module acquires the value of an MIB object, it calls a MIBReadObjects function 902. When calling the MIBReadObjects function 902, the port identifier and the object key of the MIB object to be acquired are assigned. At the same time, the MIB module 610 assigns the address for a call-back function for notifying the superior module of the value of the acquired MIB object.
By calling the MIBReadObjects function 902, a Get-request command in the SNMP is transmitted to the network. Then, as shown in FIG. 8, an agent responding to the Get-request command transmits a Get-response command.
When the superior module writes a value into the MIB object, it calls a MIBWriteObjects function 903. When calling the MIBWriteObjects function 903, the superior module assigns a port identifier, an object key of the MIB object where the value is to be written, and the value to be written. At the same time, the superior module assigns the address of the call-back function for notifying the superior module of the result of the writing from the MIB module 610.
By calling the MIBWriteObjects function 903, a Get-request command in the SNMP is transmitted to the network. Then, as shown in FIG. 8, an agent responding to the Get-request command transmits a Get-response command.
The call-back function notifies the superior module of the result of the MIBReadObjects function 902 or the MIBWriteObjects function 903. More specifically, the address of the network device and the contents of the received Get-response command are notified to the superior module.
When calling the MIBReadObjects function 902 by opening a port by assigning a broadcast address, the address of a packet carrying the Get-request command transmitted to the network (an IP packet and an IPX packet in the cases of the IP protocol and the NetWare protocol, respectively). Accordingly, this packet is received by a plurality of network devices, so that a plurality of agents respond to this Get-request command. As a result, the manager receives a plurality of Get-response commands. In this case, the call back function performs a plurality of notification operations having different network device addresses with the same port identifier. By checking the address, the superior module can know to which network device each call back relates.
More specific flows will now be described. In response to a request from the superior module, the MIB module 610 performs processing, such as conversion from an object key into an object identifier, or the like, and requests the SNMP module 611 to transmit a Get-request command.
In response to the request of the command from the MIB module 610, the SNMP module 611 generates the PDU 710 shown in FIG. 7 in the RAM 503, and transmits an SNMP packet to the common transport module 612.
The common transport module 612 performs processing, such as addition of a header, or the like, in accordance with a protocol selected by the user when the network management software operates. When the protocol selected by the user is a TCP/IP protocol and a NetWare protocol, the common transport module 612 transmits the packet to the WinSock API module 617 and the NetWare API module 616, respectively.
A description will now be provided assuming that the protocol selected by the user is the TCP/IP protocol. The WinSock API module 617 converts the received packet into an IP packet, and requests the OS to transmit the packet to the network. Then, the OS writes the packet in the RAM 503 into the NIC 508 via the system bus 504. Then, the NIC 508 converts the written packet into a packet in the form of frames, and transmits the packet to the LAN 100.
On the other hand, a packet from the network device is received by the NIC 508. The NIC 508 notifies the OS of the reception of the packet by performing an interrupt. The OS reads the packet from the NIC 508 via the system bus 504, and stores the read packet in the RAM 503. The OS determines a protocol relating to the packet based on the protocol selected by the user or the received packet, and transmits the packet to the WinSock module 617 and the NetWare API module 616 when the protocol is the TCP/IP protocol and the NetWare protocol, respectively.
A description will now be provided of the case that the protocol as the result of the determination is the TCP/IP protocol. The WinSock API module 617 determines if the packet is to the module""s own address by checking the address of the packet. If the result of the determination is negative, the packet is abandoned. If the result of the determination is affirmative, the WinSock API module 617 transmits the packet to the common transport module 612 by starting the UPD handler 614.
The common transport module 612 performs processing, such as removal of the transport header, or the like, and transmits the SNMP packet to the SNMP module 611. The SNMP module 611 transmits MIB information within the PDU 710 to the MIB module 610 by removing the SNMP header. The MIB module 610 converts the MIB information into a form defined by the MIB API, and notifies the superior module of the value of the MIB object according to the call-back function.
A file necessary for installing the network management software is usually recorded in a physical medium, such as a floppy disk (FD), a CD-ROM or the like, and is distributed, or transmitted via the network. After thus acquiring the file necessary for installing the network management software, the user starts install according to a predetermined install procedure.
The install procedure of the network management software is the same as the install procedure of any other ordinary software. That is, after the user starts an installer for the network management software in the personal computer (PC), the installer automatically executes install of the network management software. The installer also copies the file necessary for the network management software to the hard disk of the PC, causes the user to input information if necessary, and corrects or newly forms the file necessary for the network management software.
Next, a description will be provided of a search sequence in the network management software in the conventional approach. FIG. 10 is a diagram illustrating a search sequence in the network management software in the coventional approach.
In FIG. 10, search module 1030 is the same as the search module 604 shown in FIG. 6. As other modules in the network management software, this search module 1030 is executed by the CPU 501 shown in FIG. 5 in the PC 103 shown in FIG. 1.
Device 1031 is connected to the network and is a device where an SNMP agent operates. Device 1031 corresponds, for example, to the NB 101. Similarly, device 1032 corresponds to the NB 118.
When an instruction to start search is provided from a superior module, the search module 1030 assigns a broadcast address, and transmits an SNMP packet for acquiring the state of the device and the device type (1001). Since the broadcast address is assigned, this packet is transmitted to all network devices connected to the network.
Each network device mounting an SNMP agent transmits a response packet in response to the SNMP packet (1002 and 1003).
The search module 1030 which has received the response packet from the network device transmits an SNMP packet to each network device in order to acquire more detailed information. More specifically, in FIG. 10, an SNMP packet is transmitted in process 1004 for the response packet in process 1002, and an SNMP packet is transmitted in process 1006 for the response packet in process 1003. This transmission of the SNMP packet is termed xe2x80x9cacquisition of informationxe2x80x9d for each device.
The reason why the value of the MIB object is not inquired in the transmission of the SNMP packet in process 1001 while the value is inquired in the transmission of the SNMP packet in process 1004 or 1006 is as follows. That is, if many MIB objects are inquired at a time with one packet, there is the possibility that the length of response packets from network devices exceeds the maximum length (484 bytes) of the packet allowed in the SNMP protocol. In such a case, an error xe2x80x9ctoo big in the SNMP protocolxe2x80x9d is transmitted from the network devices, so that information cannot be obtained at all. Accordingly, the value of the MIB object is inquired by dividing the packet into a plurality of SNMP packets.
In particular, in this conventional approach, the SNMP packet in process 1004 or 1006 requires optional equipment mounted in each network device. If many units of equipment are mounted in the network device, the possibility that the length of the response packet from the network device is large is high. If the values of other MIB objects are simultaneously inquired, the possibility that the length of response packets exceeds the maximum length (484 bytes), becomes higher. Accordingly, it is safer to make a packet that is to make inquiry of optional equipment an independent packet.
The network device which has received the SNMP packet transmits a response packet. More specifically, packet transmission in process 1005 and packet transmission in process 1006 are performed for the reception of the packet in process 1004 and the reception of the packet in process 1006, respectively.
Upon expiration of a device-response timer 1021, the search module 604 notifies the superior module of information relating to network devices which have been obtained (process 1021). This notification is termed notification of the result of search.
Upon expiration of a search-interval timer 1022, search of network devices is resumed. Since the processing from process 1008 to process 1014 is the same as the processing from process 1001 to process 1007, further description thereof will be omitted.
In the above-described conventional approach, however, there are problems in that processes 1004 and 1011, processes 1005 and 1012, processes 1006 and 1013, and processes 1007 and 1014 are duplicate communication processes, thereby causing crowded network traffic.
According to the present invention, when a plurality of sets of information relating to network devices include information which can change with time and information which hardly change with time, crowded network traffic is prevented by only inquiring information which can change with time.
That is, in the present invention, crowded network traffic is prevented by transmitting and receiving only necessary packets in a search sequence.
According to one aspect of the present invention, a network-device management apparatus includes search means for searching a device connected to a network, acquisition means for acquiring a value of a device attribute relating to the device detected in the search by the search means, and storage means for storing values of a plurality of device attributes relating to the device detected in the search. When the value of each of the plurality of device attributes relating to the device detected in the search is stored in the storage means, the value stored in the storage means is used.
According to another aspect of the present invention, a network-device management method includes a search step of searching a device connected to a network, an acquisition step of acquiring a value of a device attribute relating to the device detected in the search in the search step, and a storage step of storing values of a plurality of device attributes relating to the device detected in the search in storage means. When the value of each of the plurality of device attributes relating to the device detected in the search is stored in the storage means, the value stored in the storage means is used.
According to still another aspect of the present invention, a storage medium capable of being read by a computer which medium stores a program to be executed by the computer. The program includes a search step of searching a device connected to a network, an acquisition step of acquiring a value of a device attribute relating to the device detected in the search in the search step, and a storage step of storing values of a plurality of device attributes relating to the device detected in the search in storage means. When the value of each of the plurality of device attributes relating to the device detected in the search is stored in the storage means, the value stored in the storage means is used.
The foregoing and other objects, advantages and features of the present invention will become more apparent from the following description of the preferred embodiments taken in conjunction with the accompanying drawings.